本程式WhoLockDwg.exe整合在AutoCAD可查詢dwg圖檔被開啟及鎖住狀態。
程式約2007年以C++在BCB6完成,整合在AutoCAD工具列,可以隨時查詢任一dwg圖檔目前是否被開啟、被誰開啟,而dwg圖檔被開啟即處於被鎖住狀態,他人僅可看圖無法編輯。如今程式升級至現代C++。
使用情境:當圖檔被A鎖住而他人B急於開啟編輯時,B或管理者可以偵知開檔資訊通知A關檔,使工作順利進行。
當AutoCAD DWG檔案被開啟時,會同地產生唯讀同名的.dwl檔案,其檔內容包含開檔資訊。本程式即以此偵測判斷。
//fulldwgfn: dwg檔名
String lockdwgfn = ChangeFileExt(fulldwgfn, ".dwl"); //依據fulldwgfn檔名組成.dwl檔名:lockdwgfn
if(FileExists(lockdwgfn)) //若lockdwgfn檔案存在,即知dwg正被開啟中
{
Label3->Font->Color = clRed;
Label3->Caption = "\n!! [ "+fulldwgfn+" ]正被開啟使用中 !!\n";
char buff[300];
String temp;
ifstream infile;
infile.open(lockdwgfn.w_str());
if (!infile) return ;
while (!infile.eof()) //讀取lockdwgfn檔案資訊
{
infile.getline(buff,sizeof(buff));
temp = buff;
if (Trim(temp) == "") continue;
Label3->Caption += "\n"+temp; //列示開檔資訊
}
infile.close();
}
else
{
Label3->Font->Color = clBlue;
Label3->Caption = "\n\n* [ " + fulldwgfn + " ]未被開啟使用 *";
}
程式已經置於雲端分享,可以下載。下載說明在本文。